package com.youlu.campus.entity.english;

import com.youlu.campus.base.base.EntityBase;
import com.youlu.campus.entity.ActivityAnswerInfo;
import lombok.Data;
import org.springframework.data.annotation.Transient;
import org.springframework.data.mongodb.core.index.Indexed;
import org.springframework.data.mongodb.core.mapping.Document;

import java.util.ArrayList;
import java.util.List;

/**
 * 用户参与报名答题记录
 */
@Data
@Document(collection = "userCompetitionQa")
public class UserCompetitionQa extends EntityBase {

    private String name;
    @Indexed
    private String userId;
    @Indexed
    private String activityGroupId;
    private String activityGroupName;
    private String caLevel="暂无证书";
    private String universityId;
    private String universityName;
    @Indexed
    private String qaCode;
    private String qaType;
    private Double score =0D;
    private Integer qaLimit =0;
    @Indexed
    private String qaInfoId;
    private String nickName;

    private String avatarUrl;

    @Transient
    private String qaDetail;
    private String feeTypeCode;
    private String caType;
    @Transient
    private Boolean receiveCa= Boolean.FALSE;

    private List<ScoreMappingLevel> qaScoreLevelList = new ArrayList<>();

    private String activityId;

    private String tips;

    /**
     * true 电子版需要收费 false 不收费
     */
    private Boolean digitalCaPay = Boolean.FALSE;

    /**
     * 电子证书支付描述
     * @link digitalCaPay 如果等于true 情况
     */
    private String digitalCaPayDesc;

    /**
     * 活动类型
     */
    private String activityType;

    /**
     * 增加音频类活动是否有题库练习 true 开启题库练习
     */
    private Boolean qaExercise = Boolean.FALSE;

    /**
     * 是否有电子证书 true 有
     */
    private Boolean hasElectronicCa = Boolean.FALSE;
    /**
     * 是否有纸质证书 true 有
     */
    private Boolean hasPaperCa = Boolean.FALSE;
    /**
     * 电子证书是否可领取 true 可领取
     */
    private Boolean digitalCaReceive = Boolean.TRUE;
    /**
     * 电子证书不可领取弹窗提示
     */
    private String  digitalCaNoReceiveDesc;
    /**
     * 答题渠道
     * inner:内部答题
     * outer:外部答题
     */
    @Transient
    private String qaChannel="inner";
    /**
     * 外部答题说明
     */
    @Transient
    private String outerQaLinker;

}
